package com.ruoyi.project.good.domain;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 商品对象 goods
 * 
 * @author ruoyi
 * @date 2020-07-01
 */
public class Goods extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 商品ID */
    private Long goodsId;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String goodsName;

    /** 商品类型ID */
    @Excel(name = "商品类型ID")
    private Long goodstypeId;

    /** 公司ID */
    @Excel(name = "公司ID")
    private Long companyId;

    /** 产品详情 */
    @Excel(name = "产品详情")
    private String goodsDetails;

    /** 是否线上支付 */
    @Excel(name = "是否线上支付")
    private Long isPayment;

    /** 1分销商品 */
    @Excel(name = "1分销商品")
    private Integer isDistribution;

    /** 1拼团商品 */
    @Excel(name = "1拼团商品")
    private Integer isAssemble;

    /** 1：秒杀商品  */
    @Excel(name = "1：秒杀商品 ")
    private Integer isKill;

    /** 拼团发布时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "拼团发布时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date assembleTime;

    /** $column.columnComment */
    @Excel(name = "拼团发布时间")
    private String coverImg;

    /** 排序 */
    @Excel(name = "排序")
    private Integer sort;

    /** 1删除 */
    @Excel(name = "1删除")
    private Integer isDel;

    private Long userId;

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    private List<GoodSpec> specList;

    private List<GoodsPhoto> photoList;

    public List<GoodSpec> getSpecList() {
        return specList;
    }

    public void setSpecList(List<GoodSpec> specList) {
        this.specList = specList;
    }

    public List<GoodsPhoto> getPhotoList() {
        return photoList;
    }

    public void setPhotoList(List<GoodsPhoto> photoList) {
        this.photoList = photoList;
    }

    public void setGoodsId(Long goodsId)
    {
        this.goodsId = goodsId;
    }

    public Long getGoodsId() 
    {
        return goodsId;
    }
    public void setGoodsName(String goodsName) 
    {
        this.goodsName = goodsName;
    }

    public String getGoodsName() 
    {
        return goodsName;
    }
    public void setGoodstypeId(Long goodstypeId) 
    {
        this.goodstypeId = goodstypeId;
    }

    public Long getGoodstypeId() 
    {
        return goodstypeId;
    }
    public void setCompanyId(Long companyId) 
    {
        this.companyId = companyId;
    }

    public Long getCompanyId() 
    {
        return companyId;
    }
    public void setGoodsDetails(String goodsDetails) 
    {
        this.goodsDetails = goodsDetails;
    }

    public String getGoodsDetails() 
    {
        return goodsDetails;
    }
    public void setIsPayment(Long isPayment) 
    {
        this.isPayment = isPayment;
    }

    public Long getIsPayment() 
    {
        return isPayment;
    }
    public void setIsDistribution(Integer isDistribution) 
    {
        this.isDistribution = isDistribution;
    }

    public Integer getIsDistribution() 
    {
        return isDistribution;
    }
    public void setIsAssemble(Integer isAssemble) 
    {
        this.isAssemble = isAssemble;
    }

    public Integer getIsAssemble() 
    {
        return isAssemble;
    }
    public void setIsKill(Integer isKill) 
    {
        this.isKill = isKill;
    }

    public Integer getIsKill() 
    {
        return isKill;
    }
    public void setAssembleTime(Date assembleTime) 
    {
        this.assembleTime = assembleTime;
    }

    public Date getAssembleTime() 
    {
        return assembleTime;
    }
    public void setCoverImg(String coverImg) 
    {
        this.coverImg = coverImg;
    }

    public String getCoverImg() 
    {
        return coverImg;
    }
    public void setSort(Integer sort) 
    {
        this.sort = sort;
    }

    public Integer getSort() 
    {
        return sort;
    }
    public void setIsDel(Integer isDel) 
    {
        this.isDel = isDel;
    }

    public Integer getIsDel() 
    {
        return isDel;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("goodsId", getGoodsId())
            .append("goodsName", getGoodsName())
            .append("goodstypeId", getGoodstypeId())
            .append("companyId", getCompanyId())
            .append("goodsDetails", getGoodsDetails())
            .append("isPayment", getIsPayment())
            .append("isDistribution", getIsDistribution())
            .append("isAssemble", getIsAssemble())
            .append("isKill", getIsKill())
            .append("assembleTime", getAssembleTime())
            .append("coverImg", getCoverImg())
            .append("sort", getSort())
            .append("remark", getRemark())
            .append("createTime", getCreateTime())
            .append("isDel", getIsDel())
            .toString();
    }
}
